package itBean;
/*
this关键字
1、this指的是当前调用的对象，如果有100个对象，将有100个this对象指向各个对象
2、this的使用场景
   (1)当局部变量和成员变量重名的时候可以使用this指定调用成员变量
   (2)通过一个构造方法去调用另一个构造方法，必须放在第一行，否则会发生编译错误
   注意：this只能用在构造方法和成员方法内部，static标识的方法里面是不能使用this的
 */
public class ThisTest1 {
    public static void main(String[] args) {
        //创建对象
        MyDate date1=new MyDate();
        System.out.println(date1.year+"年"+date1.month+"月"+ date1.day+"日");
        //创建对象
        MyDate date2=new MyDate(2012,12,20);
        System.out.println(date2.year+"年"+date2.month+"月"+ date2.day+"日");
    }
}
class MyDate{
    int year;
    int month;
    int day;
    //需求：在创建日期对象的时候，默认的日期是：1970-1-1
    public MyDate(){
        //通过一个构造方法去调用另外一个构造方法
        //目的：代码重用
        //this（实参）：必须放在构造方法的第一行
       this.year=1970;
       this.month=1;
       this.day=1;
    }
    //当局部变量和成员变量重名的时候可以使用this指定调用成员变量
    public  MyDate(int year,int month,int day){
        this.year=year;
        this.month=month;
        this.day=day;
    }
}
